約 4,461,170 件
https://w.atwiki.jp/largenumbers/pages/17.html
日本語に訳すと『配列表記』とでも訳せるだろうか?もしくはタワー、チェーンがカタカナ語のまま訳されている事を考えると『アレー(アレイ)表記』が適切かも知れない。考案者はJonathan Bowers(1969~)である。 日本ではまだ殆ど知られていない?表記法で、複数の数字を1つの数にまとめ上げる演算法はアッカーマン関数やチェーン表記と似ているが、チェーン表記よりも効率的に数の大きさを爆発させる事ができる。 ふぃっしゅ数をまともに書き表すためには、オリジナルのチェーン表記では足りないと言われる。チェーンの拡張表記や、このアレー表記といったものが必要になってくるだろう。また、アレー表記にも拡張表記が考案されており、その最終形態はBEAFと呼ばれるものである。 表記法 ・このように、{}の中に数字を,区切りで入れていく。 規則 (1) 1つ組および2つ組のアレー表記。 及び である。 (2) 最後の数字が1の時はこれを落とせる。 (3) 2番目の数字が1の時はそれ以降を全て落とせる。 ここまではチェーン表記と一緒。ここからが異なる。 (4) 3番目の数字が1の時、それ以降を全て落とす・・・のではありません。 言葉で説明するのは難しいのでとりあえず下図を見よう。 (5) (1)~(4)のいずれでも無い時、次の様に変形する。 ※チェーン表記が右側から変形していくのに対し、こちらは左側から変形していく。 ※なお、4番目以上の数字が1の時も、こちらの変形を適応させる事となる。 性質 ・3つ組アレーは3つ組チェーンと一致します。つまりタワー表記とも一致します。 ・規則(4)を逆に辿ると、{a,a,a,…と連続しているArrayは次の用に変形する事ができます。aの列の多くを1に変換する代わりに、cの値が一つ上がります。 おそらくarrayの本質を理解する上で重要なヒントになる事だと思いますし、数の大きさをarrayで見積もろうとするときに頻繁に使うことになるだろうと思うので、是非頭に入れておきましょう。 ふぃっしゅ氏は同様の変形手法に対して『繰り上がり』という語を与えています。
https://w.atwiki.jp/0x0b/pages/46.html
Array オブジェクト (Array Objects) Array オブジェクトはプロパティ名のクラスに特別な扱いを与える。プロパティ名 P (文字列値形式) は、ToString(ToUint32(P)) と P が等しく、かつ ToUint32(P) と 232-1 が等しくない場合、配列のインデックスであり、かつこの場合に限られる。各 Array オブジェクトは length プロパティを持ち、その値は常に 232 未満の負でない整数\である。length プロパティの値は配列のインデックスである各プロパティ名よりも数値的に大きい; Array オブジェクトのプロパティが作成または変更されるときは、他のプロパティがこの不変を維持する必要からいつでも調整される。特別に、配列のインデックスのプロパティが追加されるときはいつでも、length プロパティは変更され、必要であれば、配列のインデックスの数値的な値より大きくなる; そして length プロパティが変更されるといつでも、新しい length 以上の値の配列インデックスの各プロパティは自動的に削除される。この制約は Array オブジェクト自身のプロパティにのみ適用され、length やその prototype から継承されうる配列インデックスプロパティによっては影響されない。 15.4.1 関数として呼出される Array コンストラクタ (The Array Constructor Called as a Function) Array がコンストラクタとしてではなく関数として呼出されるならば、新規に Array オブジェクトを生成して初期化する。関数呼出し Array(...) は、同じ引数を持つオブジェクト生成式 new Array(...) と等価である。 15.4.1.1 Array ( [ item1 [ , item2 [ , ... ] ] ] ) Array 関数が呼出されると、次のステップが取られる 同じ引数\で Array コンストラクタを呼出す (セクション 15.4.2) のと全く同様に、新規 Array オブジェクトを生成して返す。 15.4.2 Array コンストラクタ (The Array Constructor) Array が new 式の一部として呼出されるとき、それはコンストラクタである; 新規に生成したオブジェクトを初期化する。 15.4.2.1 new Array ( [ item0 [ , item1 [ , ... ] ] ] ) この説明は、引数を与えられないか、 2 つ以上与えられる Array コンストラクタに適用する。 新規に構築されたオブジェクトの Prototype プロパティは、 Array.prototype の初期値 (せくしょん 15.4.3.1) である、オリジナルの Array プロトタイプオブジェクトに設定される。 新規に構築されたオブジェクトの Class プロパティは、 "Array" に設定される。新規に構築されたオブジェクトの length プロパティは、引数の数に設定される。 新規に構築されたオブジェクトの 0 プロパティは、 (供給された) item0 に設定される; 新規に構築されたオブジェクトの 1 プロパティは、(もし供給されれば) item1 に設定される; そして、一般に、そこにあるのと同じだけの引数に対して、新規に構築されたオブジェクトの k プロパティは、第一引数を引数番号 0 と考えて引数 k に設定される。 15.4.2.2 new Array (len) 新規に構築されるオブジェクトの Prototype プロパティは、Array.prototype (セクション 15.4.3.1) の初期値である、オリジナルの Array プロトタイプオブジェクトに設定される。新規に構築されるオブジェクトの Class プロパティは "Array" に設定される。 引数 len が Number で、かつ ToUint32(len) が len と等しければ、新規に構築されるオブジェクトの length プロパティは、 ToUint32(len) に設定される。引数 len が Number で、かつ ToUint32(len) か len と等しくなければ、例外 RangeError が投げられる。 引数 len が Number でなければ、新規に構築されるオブジェクトの length プロパティは 1 に設定され、新規に構築されるオブジェクトの 0 プロパティは、 len に設定される。 15.4.3 Array コンストラクタのプロパティ (Properties of the Array Constructor) Array コンストラクタの内部 Prototype プロパティの値は、 Function プロトタイプオブジェクト (セクション 15.3.4) である。 内部プロパティ及び length プロパティ (値は 1 ) の他に、Array コンストラクタは次のプロパティを持つ 15.4.3.1 Array.prototype Array.prototype の初期値は Array プロトタイプオブジェクト (セクション 15.4.4) である。 このプロパティは、属性 { DontEnum, DontDelete, ReadOnly } である。 15.4.4 Array プロトタイプオブジェクトのプロパティ (Properties of the Array Prototype Object) Array プロトタイプオブジェクトの内部 Prototype プロパティの値は、 Object プロトタイプオブジェクト (セクション 15.2.3.1) である。 Array プロトタイプオブジェクトはそれ自身が配列である; その Class は "Array" で、 length プロパティ (初期値は +0) とセクション 15.4.5.1 に述べる特殊な内部 Put メソッドを持つ。 プロトタイプオブジェクトのプロパティである関数の説明において、以降フレーズ "このオブジェクト" は関数実施の this 値であるオブジェクトを参照する。内部 Class プロパティの値が "Array" でないオブジェクトであることが this に許可される。 NOTE Array プロトタイプオブジェクトは独自の valueOf プロパティを持たない; だが、 valueOf プロパティを Object プロトタイプオブジェクトから継承する。 15.4.4.1 Array.prototype.constructor Array.prototype.constructor の初期値は、組込み Array コンストラクタである。 15.4.4.2 Array.prototype.toString ( ) この関数の呼び出しの結果は、このオブジェクトに組込み join メソッドを引数無しで呼出すのと同様である。 toString 関数は汎用的ではない; this 値が Array オブジェクトでなければ、例外 TypeError を投げる。それゆえ、他の種類のオブジェクトにメソッドとして転用できない。 15.4.4.3 Array.prototype.toLocaleString ( ) 配列要素は toLocaleString メソッドで文字列に変換され、それらの文字列は連結され、実装が定義するロケール特定の方法で引き出される分離子文字列で分離される。この関数の呼出しの結果は、 toString の結果に類似することが意図されるが、この関数の結果はロケール特定であることが意図される。 結果は次のように計算される このオブジェクトの Get メソッドを引数 "length" で呼出す。 ToUint32(Result(1)) を呼出す。 separator をホスト環境の現在のロケールに置いて適当なリスト分離文字列 (これは実装が定義する方法で引き出される) とする。 ToString(separator) を呼出す。 Result(2) が 0 ならば、空文字列を返す。 このオブジェクトの Get メソッドを引数 "0" で呼出す。 Result(6) が undefined か null ならば、空文字列を使用する; そうでなければ、 ToObject(Result(6)).toLocaleString() を呼出す。 R を Result(7) とする。 k を 1 とする。 k が Result(2) と等しければ、 R を返す。 R と Result(4) の連結で生成される文字列値を R とする。 このオブジェクトの Get メソッドを引数 ToString(k) で呼出す。 Result(12) が undefined か null ならば、空文字列を使用する; そうでなければ、 ToObject(Result(12)).toLocaleString() を呼出す。 S と Result(13) の連結で生成される文字列値を R とする。 k を 1 増分する。 ステップ 10 へ。 toLocaleString 関数は汎用的ではない; this 値が Array オブジェクトでなければ、例外 TypeError を投げる。 それゆえ、他の種類のオブジェクトにメソッドとして転用できない。 NOTE この関数の第一パラメータは、この標準の将来のバージョンで使用される可能性がある; 実装はこのパラメータを他の用途に使用しないことを推奨する。 15.4.4.4 Array.prototype.concat ( [ item1 [ , item2 [ , ... ] ] ] ) concat メソッドが 0 個以上の引数 item1, item2, etc. で呼出されると、順に各引数の配列要素が続く、オブジェクトの配列要素で構成される配列を返す。 次のステップが取られる A を、式 new Array() と同様に生成された新規配列とする。 n を 0 とする。 E を このオブジェクトとする。 E が Array オブジェクトでなければ、 ステップ 16 へ。 k を 0 とする。 E の Get メソッドを、引数 "length" で呼出す。 k と Result(6) が等しければ、ステップ 19 へ。 ToString(k) を呼出す。 E が Result(8) という名前のプロパティを持つならば、ステップ 10 へ。 E が Result(8) という名前のプロパティを持たないならば、 ステップ 13 へ。 ToString(n) を呼出す。 E の Get メソッドを、引数 Result(8) で呼出す。 A の Put メソッドを、引数 Result(10) と Result(11) で呼出す。 n を 1 増分する。 k を 1 増分する。 ステップ 7 へ。 ToString(n) を呼出す。 A の Put メソッドを、引数 Result(16) と E で呼出す。 n を 1 増分する。 引数リストから次の引数を取得する; これ以上引数がなければ、ステップ 22 へ。 E を Result(19) とする。 ステップ 4 へ。 A の Put メソッドを、引数 "length" と n で呼出す。 A を返す。 concat メソッドの length プロパティは 1 である。 NOTE concat 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 concat 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.5 Array.prototype.join (separator) 配列要素は文字列に変換され、文字列は連結され、 separator で分離される。 separator が提供されないならば、 1 つのカンマが separator に用いられる。 join メソッドは引数 separator をとり、次のステップを実行する このオブジェクト の Get メソッドを、引数 "length" で呼出す。 ToUint32(Result(1)) を呼出す。 separator が undefined ならば、 separator を 1 文字の文字列 "," とする。 ToString(separator) を呼出す。 Result(2) が 0 ならば、空文字列を返す。 このオブジェクト の Get メソッドを、引数 "0" で呼出す。 Result(6) が undefined か null ならば、 空文字列を用いる; そうでなければ、 ToString(Result(6)) を呼出す。 R を Result(7) とする。 k を 1 とする。 k が Result(2) が等しければ、 R を返す。 S を、 R と Result(4) を連結して生成される文字列値とする。 このオブジェクト の Get メソッドを、引数 ToString(k) で呼出す。 Result(12) が undefined か null ならば、空文字列を用いる; そうでなければ、 ToString(Result(12)) を呼出す。 R を、 S と Result(13) を連結して生成される文字列値とする。 k を 1 増分する。 ステップ 10 へ。 join メソッドの length プロパティは 1 である。 NOTE join 関数は故意に汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 join 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.6 Array.prototype.pop ( ) 配列の最後の要素が配列から取り除かれ、返される。 このオブジェクト の Get メソッドを、引数 "length" で呼出す。 ToUint32(Result(1)) を呼出す。 Result(2) が 0 以外ならば、 ステップ 6 へ。 このオブジェクト の Put メソッドを、引数 "length" と Result(2) で呼出す。 undefined を返す。 ToString(Result(2)-1) を呼出す。 このオブジェクト の Get メソッドを、引数 Result(6) で呼出す。 このオブジェクト の Delete メソッドを、引数 Result(6) で呼出す。 このオブジェクト の Put メソッドを、引数 "length" と (Result(2)-1) で呼出す。 Result(7) を返す。 NOTE pop 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 pop 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.7 Array.prototype.push ( [ item1 [ , item2 [ , ... ] ] ] ) 引数が出現した順に配列の末尾に追加される。呼出しの結果として、新しい配列の長さが返される。 push メソッドが 0 個以上の引数 item1, item2, etc. で呼出されると、次のステップが取られる このオブジェクト の Get メソッドを、引数 "length" で呼出す。 n を ToUint32(Result(1)) 呼出しの結果とする。 引数リストから次の引数を取得する; これ以上引数がなければ、 ステップ 7 へ。 このオブジェクト の Put メソッドを、引数 ToString(n) と Result(3) で呼出す。 n を 1 増分する。 ステップ 3 へ。 このオブジェクト の Put メソッドを、引数 "length" と n で呼出す。 n を返す。 push メソッドの length プロパティは 1 である。 NOTE push 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 pust 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.8 Array.prototype.reverse ( ) 配列要素は順序を逆に再編される。呼出しの結果としてオブジェクトが返される。 引数 "length" で、このオブジェクトの Get メソッドを呼出す。 ToUint32(Result(1)) を呼出す。 floor(Result(2)/2) を算出する。 k を 0 とする。 k が Result(3) と等しければ、このオブジェクトを返す。 Result(2)-k-1 を算出する。 ToString(k) を呼出す。 ToString(Result(6)) を呼出す。 引数 Result(7) で、このオブジェクトの Get メソッドを呼出す。 引数 Result(8) で、このオブジェクトの Get メソッドを呼出す。 このオブジェクトが Result(8) という名前のプロパティを持たなければ、ステップ 19 へ。 このオブジェクトが Result(7) という名前のプロパティを持たなければ、ステップ 16 へ。 引数 Result(7) と Result(10) で、このオブジェクトの Put メソッドを呼出す。 引数 Result(8) と Result(9) で、このオブジェクトの Put メソッドを呼出す。 ステップ 25 へ。 引数 Result(7) と Result(10) で、このオブジェクトの Put メソッドを呼出す。 削除するプロパティ名として Result(8) を提供して、このオブジェクトの Delete メソッドを呼出す。 ステップ 25 へ。 このオブジェクトが Result(7) という名前のプロパティを持たなければ、ステップ 23 へ。 削除するプロパティ名として Result(7) を提供して、このオブジェクトの Delete メソッドを呼出す。 引数 Result(8) と Result(9) で、このオブジェクトの Put メソッドを呼出す。 ステップ 25 へ。 削除するプロパティ名として Result(7) を提供して、このオブジェクトの Delete メソッドを呼出す。 削除するプロパティ名として Result(8) を提供して、このオブジェクトの Delete メソッドを呼出す。 k を 1 増加させる。 ステップ 5 へ。 NOTE reverse 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 reverse 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.9 Array.prototype.shift ( ) 配列の最初の要素が配列から取り除かれ、返される。 このオブジェクト の Get メソッドを、引数 "length" で呼出す。 ToUint32(Result(1)) を呼出す。 Result(2) が 0 以外ならば、 ステップ 6 へ。 このオブジェクト の Put メソッドを、引数 "length" と Result(2) で呼出す。 undefined を返す。 このオブジェクト の Get メソッドを、引数 0 で呼出す。 k を 1 とする。 k が Result(2) と等しければ、 ステップ 18 へ。 ToString(k) を呼出す。 ToString(k-1) を呼出す。 このオブジェクトが Result(9) という名前のプロパティを持つならば、 ステップ 12 へ; このオブジェクトが Result(9) という名前のプロパティを持たないならば、 ステップ 15 へ。 このオブジェクト の Get メソッドを、引数 Result(9) で呼出す。 このオブジェクト の Put メソッドを、引数 Result(10) と Result(12) で呼出す。 ステップ 16 へ。 このオブジェクト の Delete メソッドを、引数 Result(10) で呼出す。 k を 1 増分する。 ステップ 8 へ。 このオブジェクト の Delete メソッドを、引数 ToString(Result(2)-1) で呼出す。 このオブジェクト の Put メソッドを、引数 "length" と (Result(2)-1) で呼出す。 Result(6) を返す。 NOTE shift 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 shift 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.10 Array.prototype.slice (start, end) slice メソッドは 2 つの引数、 start と end をとり、要素 start から要素 end の前まで (または、 end が undefined ならば配列の末尾まで) の配列要素で構成される配列を返す。 start が負ならば、 length を配列の長さとして、(length+start) として扱われる。 end が負ならば、length を配列の長さとして (length+end) として扱われる。 次のステップが取られる A を、式 new Array() と同様に生成した配列とする。 このオブジェクト の Get メソッドを、引数 "length" で呼出す。 ToUint32(Result(2)) を呼出す。 ToInteger(start) を呼出す。 Result(4) が負ならば、 max(*1),0) を用いる; そうでなければ min(Result(4),Result(3)) を用いる。 k を Result(5) とする。 end が undefined ならば、 Result(3) を用いる; そうでなければ ToInteger(end) を用いる。 Result(7) が負ならば、 max(*2),0) を用いる; そうでなければ min(Result(7),Result(3)) を用いる。 n を 0 とする。 k が Result(8) 以上ならば、 ステップ 19 へ。 ToString(k) を呼出す。 このオブジェクトが Result(11) という名前のプロパティを持つならば、 ステップ 13 へ; このオブジェクトが Result(11) という名前のプロパティを持たないならば、 ステップ 16 へ。 ToString(n) を呼出す。 このオブジェクト の Get メソッドを、引数 Result(11) で呼出す。 A の Put メソッドを、引数 Result(13) と Result(14) で呼出す。 k を 1 増分する。 n を 1 増分する。 ステップ 10 へ。 A の Put メソッドを、引数 "length" と n で呼出す。 A を返す。 slice メソッドの length プロパティは 2 である。 NOTE slice 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 slice 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.11 Array.prototype.sort (comparefn) 配列要素はソート (並べ替え) される。ソートは必ずしも安定的ではない(つまり、等価と比較された要素が元の順で残るとは限らない). comparefn が undefined でないならば、それは 2 個の引数 x と y を受け付け、 x y ならば負の値、 x = y ならば 0、 x y ならば正の値を返す関数であるべきである。 comparefn が undefined でなく、かつ この配列の要素について首尾一貫した比較関数 (下記参照) でない場合、 ソートの振る舞いは実装依存である。 len を ToUint32(this.length) とする。下記の全条件を満たす整数 i 及び j と オブジェクト P が存在する場合、ソートの振る舞いは実装依存である 0 ≦ i ≦ len 0 ≦ j ≦ len this は ToString(i) という名前のプロパティを持たない。 P は、 this で始まる 1 個以上の Prototype プロパティを辿ることによって取得される。 P は ToString(j) という名前のプロパティを持つ。 そうでなければ次のステップが取られる. このオブジェクト の Get メソッドを、引数 "length" で呼出す。 ToUint32(Result(1)) を呼出す。 このオブジェクトの Get, Put, Delete メソッドと SortCompare (後述) の呼出しを実装依存の順序で実行する。 Get, Put, Delete の各呼出しの第1引数は 0 以上 Result(2) 未満の整数とし、 SortCompare 呼出しの引数は先行する Get メソッド呼出しの結果とする。 このオブジェクト を返す。 返されるオブジェクトは、次の 2 個のプロパティを持たなければならない。 0 以上 Result(2) 未満の整数 j それぞれにとってプロパティ old[j] が存在するならば、 new[π(j)] は old[j], と全く同じ値であり、プロパティ old[j] が存在しないならば、 new[π(j)] は存在しないような、0 以上 Result(2) 未満の整数の数学的順列 π が存在しなければならない。 0 以上 Result(2) 未満の全ての整数 j と k それぞれについて、 SortCompare(j, k) 0 (下記 SortCompare 参照) ならば、 π(j) π(k) である。 ここでは、表記 old[j] でこの関数の実行前のこのオブジェクトの Get メソッドの引数 j での呼出しの仮の結果を参照し、 表記 new[j] でこの関数の実行後のこのオブジェクトの Get メソッドの引数 j での呼出しの仮の結果を参照する。 下記の必要条件の全てが集合 S 内の値 a, b, c (または同じ値) 全てについて満たされる場合、値の集合 S について関数 comparefn は首尾一貫した比較関数である 記法 CF b は comparefn(a,b) 0 を意味する; a =CF b は comparefn(a,b) = 0 (of either sign) を意味する; a CF b は comparefn(a,b) 0 を意味する。 comparefn(a,b) 呼出しは、 2 個の引数として a と b の値のペアを与えられるとき常に同じ値 v を返す。 さらに、 v は Number 型であり、 v は NaN ではない。 与えられる a と b のペアにとって、厳密には a CF b, a =CF b, a CF b のうち一つは true になるということに注意。 a =CF a (再帰) a =CF b ならば、 b =CF a (対称) a =CF b かつ b =CF c ならば、 a =CF c (=CF の他動) a CF b かつ b CF c ならば、 a CF c ( CF の他動) a CF b かつ b CF c ならば、 a CF c ( CF の他動) NOTE 上の条件は、 comparefn が集合 S を等価な種別に分割し、その等価な種別が全く整然としているのを保証にするのに、必要かつ十分である。 SortCompare 演算子が 2 個の引数 j と k で呼出されると、次のステップが取られる ToString(j) を呼出す。 ToString(k) を呼出す。 このオブジェクトが Result(1) という名前のプロパティを持たず、かつ このオブジェクトが Result(2) という名前のプロパティを持たないならば、 +0 を返す。 このオブジェクトが Result(1) という名前のプロパティを持たないならば、 1 を返す。 このオブジェクトが Result(2) という名前のプロパティを持たないならば、 -1 を返す。 このオブジェクト の Get メソッドを、引数 Result(1) で呼出す。 このオブジェクト の Get メソッドを、引数 Result(2) で呼出す。 x を Result(6) とする。 y を Result(7) とする。 x と y が両方 undefined ならば、 +0 を返す。 x が undefined ならば、 1 を返す。 y が undefined ならば、 -1 を返す。 引数 comparefn が undefined ならば、 ステップ 16 へ。 comparefn を、引数 x と y で呼出す。 Result(14) を返す。 ToString(x) を呼出す。 ToString(y) を呼出す。 Result(16) Result(17) ならば、 -1 を返す。 Result(16) Result(17) ならば、 1 を返す。 0 を返す。 NOTE 存在しないプロパティの値は、常に undefined プロパティ値より大きく比較し、 undefined は他の値よりも大きいと比較するため、 undefined プロパティ値は常に結果の末尾にソートし、存在しないプロパティの値が続く。 NOTE sort 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 sort 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.12 Array.prototype.splice (start, deleteCount [ , item1 [ , item2 [ , ... ] ] ] ) splice メソッドが 2 個以上の引数 start, deleteCount, そして(選択的に) item1, item2, etc. で呼出されると、配列の添え字 start から始まる deleteCount 個の配列要素が、引数 item1, item2, etc で置換される。次のステップが取られる A を、式 new Array() と同様に生成した配列とする。 このオブジェクト の Get メソッドを、引数 "length" で呼出す。 ToUint32(Result(2)) を呼出す。 ToInteger(start) を呼出す。 Result(4) が負ならば、 max(*3),0) を用いる; そうでなければ min(Result(4),Result(3)) を用いる。 min(max(ToInteger(deleteCount),0),Result(3)-Result(5)) を算出する。 k を 0 とする。 k が Result(6) と等価ならば、 ステップ 16 へ。 ToString(Result(5)+k) を呼出す。 このオブジェクトが Result(9) という名前のプロパティを持つならば、 ステップ 11 へ; このオブジェクトが Result(9) という名前のプロパティを持たないならば、 ステップ 14 へ。 ToString(k) を呼出す。 このオブジェクト の Get メソッドを、引数 Result(9) で呼出す。 A の Put メソッドを、引数 Result(11) と Result(12) で呼出す。 k を 1 増分させる。 ステップ 8 へ。 A の Put メソッドを、引数 "length" と Result(6) で呼出す。 追加引数 item1, item2, etc の数を算出する。 Result(17) が Result(6) と等しければ、 ステップ 48 へ。 Result(17) が Result(6) より大きいならば、 ステップ 37 へ。 k を Result(5) とする。 k が (Result(3)-Result(6)) と等しければ、 ステップ 31 へ。 ToString(k+Result(6)) を呼出す。 ToString(k+Result(17)) を呼出す。 このオブジェクトが Result(22) という名前のプロパティを持つならば、 ステップ 25 へ; このオブジェクトが Result(22) という名前のプロパティを持たないならば、 ステップ 28 へ。 このオブジェクト の Get メソッドを、引数 Result(22) で呼出す。 このオブジェクト の Put メソッドを、引数 Result(23) と Result(25) で呼出す。 ステップ 29 へ。 このオブジェクト の Delete メソッドを、引数 Result(23) で呼出す。 k を 1 増分する。 ステップ 21 へ。 k を Result(3) とする。 k が (Result(3)-Result(6)+Result(17)) と等しければ、 ステップ 48 へ。 ToString(k-1) を呼出す。 このオブジェクト の Delete メソッドを、引数 Result(33) で呼出す。 k を 1 減分する。 ステップ 32 へ。 k を (Result(3)-Result(6)) とする。 k が Result(5) と等しければ、 ステップ 48 へ。 ToString(k+Result(6)-1) を呼出す。 ToString(k+Result(17)-1) を呼出す。 このオブジェクトが Result(39) という名前のプロパティを持つならば、 ステップ 42 へ; このオブジェクトが Result(39) という名前のプロパティを持たないならば、 ステップ 45 へ。 このオブジェクト の Get メソッドを、引数 Result(39) で呼出す。 このオブジェクト の Put メソッドを、引数 Result(40) と Result(42) で呼出す。 ステップ 46 へ。 このオブジェクト の Delete メソッドを、引数 Result(40) で呼出す。 k を 1 減分する。 ステップ 38 へ。 k を Result(5) とする。 item1 から始まる引数リストの一部から、次の引数を取得する; これ以上引数がないならば、 ステップ 53 へ。 このオブジェクト の Put メソッドを、引数 ToString(k) と Result(49) で呼出す。 k を 1 増分する。 ステップ 49 へ。 このオブジェクト の Put メソッドを、引数 "length" と (Result(3)-Result(6)+Result(17)) で呼出す。 A を返す。 splice メソッドの length プロパティは 2 である。 NOTE splice 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 splice 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.4.13 Array.prototype.unshift ( [ item1 [ , item2 [ , ... ] ] ] ) 配列内の順所が引数リスト内に出現順と同じになるように、引数が配列の先頭に prepend される。 unshift メソッドが 0 個以上の引数 item1, item2, etc. で呼出されると、次のステップが取られる このオブジェクト の Get メソッドを、引数 "length" で呼出す。 ToUint32(Result(1)) を呼出す。 引数の数を算出する。 k を Result(2) とする。 k が 0 ならば、 ステップ 15 へ。 ToString(k-1) を呼出す。 ToString(k+Result(3)-1) を呼出す。 このオブジェクトが Result(6) という名前のプロパティを持つならば、 ステップ 9 へ; このオブジェクトが Result(6) という名前のプロパティを持たないならば、 ステップ 12 へ。 このオブジェクト の Get メソッドを、引数 Result(6) で呼出す。 このオブジェクト の Put メソッドを、引数 Result(7) と Result(9) で呼出す。 ステップ 13 へ。 このオブジェクト の Delete メソッドを、引数 Result(7) で呼出す。 k を 1 減分する。 ステップ 5 へ。 k を 0 とする。 item1 で始まる引数リストの一部から、次の引数を取得する; これ以上引数がないならば、 ステップ 21 へ。 ToString(k) を呼出す。 このオブジェクト の Put メソッドを、引数 Result(17) と Result(16) で呼出す。 k を 1 増分する。 ステップ 16 へ。 このオブジェクト の Put メソッドを、引数 "length" と (Result(2)+Result(3)) で呼出す。 (Result(2)+Result(3)) を返す。 unshift メソッドの length プロパティは 1 である。 NOTE unshift 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 unshift 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 15.4.5 Array インスタンスのプロパティ (Properties of Array Instances) Array インスタンスは、 Array プロトタイプオブジェクトからプロパティを継承し、そして次のプロパティも持つ。 15.4.5.1 Put (P, V) Array オブジェクトは変化した Put メソッドを用いて他の Native ECMAScript オブジェクトのために使用される。 A を Array オブジェクト、 P を文字列と想定する。 A の Put メソッドが、プロパティ P と値 V で呼出されるとき、次のステップが取られる A の CanPut method を名前 P で呼出す。 Result(1) が false ならば、戻る。 A 名前 P のプロパティを持たないならば、ステップ 7 へ。 P が "length" ならば、ステップ 12 へ。 A のプロパティ P を V に設定する。 ステップ 8 ヘ。 名前 P のプロパティを生成し、値を V に設定し空の属性を与える。 P が配列の添え字でなければ、戻る。 ToUint32(P) が A の length プロパティ未満ならば、戻る。 A の length プロパティを ToUint32(P)+1 に変更 (または設定) する。 戻る。 ToUint32(V) を算出する。 Result(12) が ToNumber(V) と等しくなければ、例外 RangeError を投げる。 A の length プロパティ の値未満であり Result(12) 未満でない各整数 k について、 A 自身が ToString(k) という名前の (継承したプロパティではない) プロパティを持つならば、そのプロパティを削除する。 A のプロパティ P の値を Result(12) に設定する。 戻る。 15.4.5.2 length Array オブジェクトの length プロパティは、配列の添え字を名前とする各プロパティの名前より、常に数値的に大きい。 length プロパティは属性 { DontEnum, DontDelete } を持つ。
https://w.atwiki.jp/tyrant/pages/136.html
Communications Array 種族:Imperial パック:Standard レア度:Common 体力:5 待機:2 能力:Jam Goldパックから入手可能。 種族不問のJamをばらまく。キャタピラが付くとTempestになるのだろうか。 Jamは強力なスキルであるが確率50%なので過信はできない。 Wallは持ってないので安心して配置できると言えばできるが運用は難しいのではないだろうか。 アチーブメントの「Lucky Streak」はJamを5回成功させる必要があるので、このカードが役に立つかもしれない。 後に上位互換が続々登場。Gatling TowerとかSkyCom(Lv2)とか。 Foundryと背景が同じ。これだけではなく背景の使い回しは結構多いらしい。 コメント コメント
https://w.atwiki.jp/0x0b/pages/62.html
Array オブジェクト Array オブジェクトはプロパティ名のクラスに特別な扱いを与える。プロパティ名 P (文字列値形式) は、ToString(ToUint32(P)) と P が等しく、かつ ToUint32(P) と 232-1 が等しくない場合、配列のインデックスであり、かつこの場合に限られる。各 Array オブジェクトは length プロパティを持ち、その値は常に 232 未満の負でない整数\である。length プロパティの値は配列のインデックスである各プロパティ名よりも数値的に大きい; Array オブジェクトのプロパティが作成または変更されるときは、他のプロパティがこの不変を維持する必要からいつでも調整される。特別に、配列のインデックスのプロパティが追加されるときはいつでも、length プロパティは変更され、必要であれば、配列のインデックスの数値的な値より大きくなる; そして length プロパティが変更されるといつでも、新しい length 以上の値の配列インデックスの各プロパティは自動的に削除される。この制約は Array オブジェクト自身のプロパティにのみ適用され、length やその prototype から継承されうる配列インデックスプロパティによっては影響されない。 関数として呼出される Array コンストラクタ Array がコンストラクタとしてではなく関数として呼出されるならば、新規に Array オブジェクトを生成して初期化する。関数呼出し Array(...) は、同じ引数を持つオブジェクト生成式 new Array(...) と等価である。 Array ( [ item1 [ , item2 [ , ... ] ] ] ) Array 関数が呼出されると、次のステップが取られる 同じ引数\で Array コンストラクタを呼出す(Array コンストラクタ)のと全く同様に、新規 Array オブジェクトを生成して返す。 Array コンストラクタ Array が new 式の一部として呼出されるとき、それはコンストラクタである; 新規に生成したオブジェクトを初期化する。 new Array ( [ item0 [ , item1 [ , ... ] ] ] ) この説明は、引数を与えられないか、 2 つ以上与えられる Array コンストラクタに適用する。 新規に構築されたオブジェクトの Prototype プロパティは、 Array.prototype の初期値 (せくしょん 15.4.3.1) である、オリジナルの Array プロトタイプオブジェクトに設定される。 新規に構築されたオブジェクトの Class プロパティは、 "Array" に設定される。新規に構築されたオブジェクトの length プロパティは、引数の数に設定される。 新規に構築されたオブジェクトの 0 プロパティは、 (供給された) item0 に設定される; 新規に構築されたオブジェクトの 1 プロパティは、(もし供給されれば) item1 に設定される; そして、一般に、そこにあるのと同じだけの引数に対して、新規に構築されたオブジェクトの k プロパティは、第一引数を引数番号 0 と考えて引数 k に設定される。 new Array (len) 新規に構築されるオブジェクトの Prototype プロパティは、Array.prototype(Array.prototype)の初期値である、オリジナルの Array プロトタイプオブジェクトに設定される。新規に構築されるオブジェクトの Class プロパティは "Array" に設定される。 引数 len が Number で、かつ ToUint32(len) が len と等しければ、新規に構築されるオブジェクトの length プロパティは、 ToUint32(len) に設定される。引数 len が Number で、かつ ToUint32(len) か len と等しくなければ、例外 RangeError が投げられる。 引数 len が Number でなければ、新規に構築されるオブジェクトの length プロパティは 1 に設定され、新規に構築されるオブジェクトの 0 プロパティは、 len に設定される。 Array コンストラクタのプロパティ Array コンストラクタの内部 Prototype プロパティの値は、 Function プロトタイプオブジェクト 内部プロパティ及び length プロパティ (値は 1 ) の他に、Array コンストラクタは次のプロパティを持つ Array.prototype Array.prototype の初期値は Array プロトタイプオブジェクト(プロトタイプオブジェクトのプロパティ )である Array プロトタイプオブジェクトのプロパティ Array プロトタイプオブジェクトの内部 Prototype プロパティの値は、 Object プロトタイプオブジェクト Array プロトタイプオブジェクトはそれ自身が配列である; その Class は "Array" で、 length プロパティ (初期値は +0) とセクション 15.4.5.1 に述べる特殊な内部 Put メソッドを持つ。 プロトタイプオブジェクトのプロパティである関数の説明において、以降フレーズ "このオブジェクト" は関数実施の this 値であるオブジェクトを参照する。内部 Class プロパティの値が "Array" でないオブジェクトであることが this に許可される。 NOTE Array プロトタイプオブジェクトは独自の valueOf プロパティを持たない; だが、 valueOf プロパティを Object プロトタイプオブジェクトから継承する。 Array.prototype.constructor Array.prototype.constructor の初期値は、組込み Array コンストラクタである。 Array.prototype.toString ( ) この関数の呼び出しの結果は、このオブジェクトに組込み join メソッドを引数無しで呼出すのと同様である。 toString 関数は汎用的ではない; this 値が Array オブジェクトでなければ、例外 TypeError を投げる。それゆえ、他の種類のオブジェクトにメソッドとして転用できない。 Array.prototype.toLocaleString ( ) 配列要素は toLocaleString メソッドで文字列に変換され、それらの文字列は連結され、実装が定義するロケール特定の方法で引き出される分離子文字列で分離される。この関数の呼出しの結果は、 toString の結果に類似することが意図されるが、この関数の結果はロケール特定であることが意図される。 結果は次のように計算される toLocaleString 関数は汎用的ではない; this 値が Array オブジェクトでなければ、例外 TypeError を投げる。 それゆえ、他の種類のオブジェクトにメソッドとして転用できない。 NOTE この関数の第一パラメータは、この標準の将来のバージョンで使用される可能性がある; 実装はこのパラメータを他の用途に使用しないことを推奨する。 Array.prototype.concat ( [ item1 [ , item2 [ , ... ] ] ] ) concat メソッドが 0 個以上の引数 item1, item2, etc. で呼出されると、順に各引数の配列要素が続く、オブジェクトの配列要素で構成される配列を返す。 concat メソッドの length プロパティは 1 である。 NOTE concat 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 concat 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.join (separator) 配列要素は文字列に変換され、文字列は連結され、 separator で分離される。 separator が提供されないならば、 1 つのカンマが separator に用いられる。 join メソッドは引数 separator をとる join メソッドの length プロパティは 1 である。 NOTE join 関数は故意に汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 join 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.pop ( ) 配列の最後の要素が配列から取り除かれ、返される。 NOTE pop 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 pop 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.push ( [ item1 [ , item2 [ , ... ] ] ] ) 引数が出現した順に配列の末尾に追加される。呼出しの結果として、新しい配列の長さが返される。 push メソッドが 0 個以上の引数 item1, item2, etc. で呼出されると、次のステップが取られる push メソッドの length プロパティは 1 である。 NOTE push 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 pust 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.reverse ( ) 配列要素は順序を逆に再編される。呼出しの結果としてオブジェクトが返される。 NOTE reverse 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 reverse 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.shift ( ) 配列の最初の要素が配列から取り除かれ、返される。 NOTE shift 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 shift 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.slice (start, end) slice メソッドは 2 つの引数、 start と end をとり、要素 start から要素 end の前まで (または、 end が undefined ならば配列の末尾まで) の配列要素で構成される配列を返す。 start が負ならば、 length を配列の長さとして、(length+start) として扱われる。 end が負ならば、length を配列の長さとして (length+end) として扱われる。 次のステップが取られる slice メソッドの length プロパティは 2 である。 NOTE slice 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 slice 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.sort (comparefn) 配列要素はソート (並べ替え) される。ソートは必ずしも安定的ではない(つまり、等価と比較された要素が元の順で残るとは限らない). comparefn が undefined でないならば、それは 2 個の引数 x と y を受け付け、 x y ならば負の値、 x = y ならば 0、 x y ならば正の値を返す関数であるべきである。 comparefn が undefined でなく、かつ この配列の要素について首尾一貫した比較関数 (下記参照) でない場合、 ソートの振る舞いは実装依存である。 len を ToUint32(this.length) とする。下記の全条件を満たす整数 i 及び j と オブジェクト P が存在する場合、ソートの振る舞いは実装依存である 返されるオブジェクトは、次の 2 個のプロパティを持たなければならない。 ここでは、表記 old[j] でこの関数の実行前のこのオブジェクトの Get メソッドの引数 j での呼出しの仮の結果を参照し、 表記 new[j] でこの関数の実行後のこのオブジェクトの Get メソッドの引数 j での呼出しの仮の結果を参照する。 下記の必要条件の全てが集合 S 内の値 a, b, c (または同じ値) 全てについて満たされる場合、値の集合 S について関数 comparefn は首尾一貫した比較関数である 記法 CF b は comparefn(a,b) 0 を意味する; a =CF b は comparefn(a,b) = 0 (of either sign) を意味する; a CF b は comparefn(a,b) 0 を意味する。 NOTE 上の条件は、 comparefn が集合 S を等価な種別に分割し、その等価な種別が全く整然としているのを保証にするのに、必要かつ十分である。 SortCompare 演算子が 2 個の引数 j と k で呼出されると、次のステップが取られる NOTE 存在しないプロパティの値は、常に undefined プロパティ値より大きく比較し、 undefined は他の値よりも大きいと比較するため、 undefined プロパティ値は常に結果の末尾にソートし、存在しないプロパティの値が続く。 NOTE sort 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 sort 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.splice (start, deleteCount [ , item1 [ , item2 [ , ... ] ] ] ) splice メソッドが 2 個以上の引数 start, deleteCount, そして(選択的に) item1, item2, etc. で呼出されると、配列の添え字 start から始まる deleteCount 個の配列要素が、引数 item1, item2, etc で置換される。次のステップが取られる splice メソッドの length プロパティは 2 である。 NOTE splice 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 splice 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array.prototype.unshift ( [ item1 [ , item2 [ , ... ] ] ] ) 配列内の順所が引数リスト内に出現順と同じになるように、引数が配列の先頭に prepend される。 unshift メソッドが 0 個以上の引数 item1, item2, etc. で呼出されると、次のステップが取られる unshift メソッドの length プロパティは 1 である。 NOTE unshift 関数は故意にに汎用的である; this 値が Array オブジェクトであることを要求されない。それゆえ、他の種類のオブジェクトにメソッドとして転用可能である。 unshift 関数が host オブジェクトにうまく適用できるかどうかは、実装依存である。 Array インスタンスのプロパティ Array インスタンスは、 Array プロトタイプオブジェクトからプロパティを継承し、そして次のプロパティも持つ。 Put (P, V) Array オブジェクトは変化した Put メソッドを用いて他の Native ECMAScript オブジェクトのために使用される。 A を Array オブジェクト、 P を文字列と想定する。 A の Put メソッドが、プロパティ P と値 V で呼出されるとき、次のステップが取られる length Array オブジェクトの length プロパティは、配列の添え字を名前とする各プロパティの名前より、常に数値的に大きい。 length プロパティは属性 { DontEnum, DontDelete } を持つ。
https://w.atwiki.jp/dk_alpha/pages/33.html
WispLisp Array of List WispLisp Array of List Xbox360での配信が開始されました。 Ver1.01を公開しました。 Ver1.00公開しました。 +詳細[Click] 今、確かなクソゲーが必要です。 高速弾をかわした所を物量で撃ちぬいてシューターを皆殺しにして楽しむゲームです。俺が。 火力にはマンダラを。マンダラには物量を。新生WispLisp、誕生。 WispLisp Array of List Ver1.01(Windows)Download 22.3MB 更新履歴 Ver1.01 EASYの難易度を下げました。 Xbox360版はこちらから WispLisp Array of List - Xbox.com このゲームに使われているファイルは「やわらかライセンス」です。 ゲームを作ってみたい、改造したい方は自由に利用して構いません。 <ライセンス> WispLisp Array of List は やわらかライセンス のもと配布されます。 JAPANESE ライセンス Copyright 2011 あるふぁ~秘密基地(Alpha Secret Base) DONG. All Rights Reserved. 免責・著作・配布 柔かいコト 本ゲームは「みんなで楽しく」やわらかいです。 本ゲームを改造したりイジったバージョンを配布しても、何らOKです。改造たのしーい! 改造したところや改造した人の名前を、分かりやすいところに書いておくと いいかもしれません。 ナイスな改造が出来たら メールなどで教えて。俺にも遊ばせてください。 改造とか一切してないものは好きにコピーして配布しちゃって結構結構。 ENGLISH License Copyright 2011 Alpha Secret Base. DONG. All rights reserved. Disclaimer / Copyright / Redistribution This game is under the "Yawaraka(flexible)" license. Use at your own risk. You can freely modify and redistribute it. Conversions are really Fun! You should write the changes and the person who did them in the readme file or in a place that was obvious to find. If you make a cool modification, please tell me via mail or by any other means, even though that s not a condition of the license. Let me enjoy your changes too. If you have not done any modifications, you can freely distribute without problems.
https://w.atwiki.jp/anno2070jpn/pages/286.html
Metal Converter 建築コスト 資金4000 ,Building Module 50,Tools 30 維持コスト 資金-200 ,電力-25 サイズ 3x4 建設場所:海底 アンロック条件 Tech Tier2住民(Researchers) 750人 産出品 Iron Ore / Copper / Gold? / Uranium 直訳すると金属変換機。おそらく海底の岩石から化学的手法で金属を取り出す施設なのであろう。 Metal Converterは海底において金属資源を採掘することができる施設である。 この施設を稼動させるためには、Underwater Plateauに金属資源のFertilityが存在しなければならない。 これはBlack Somokerの活動停止によって出現する。(詳細は各島ごとのパラメータを参照) Metal Converterの産出品はFertilityの種類によって変化する。 アンロック条件はResearchers750人で、Tech市街をそれなりの規模まで発展させなければならない。 また建設コストも維持コストもかなり高いため、この施設を実際に使うにはかなりの経済規模が必要である。 しかし、鉱山の数や埋蔵量に制限されることなく大量の金属資源を確保できることから、超巨大都市などを作る際には消費材の材料の供給元として一考の価値がある。 Metal Converterは単体での作業効率が通常の鉱山系施設より高いため、物資が余らないように生産施設の数を調整する必要がある。
https://w.atwiki.jp/keisks/pages/293.html
asarrayの引数にarrayを入れるときには注意。(コピーではなく、参照になる。) In [3] import numpy as np In [4] a = np.array([1,2]) In [5] b = np.asarray(a) In [6] b2 = np.array(a) In [7] b Out[7] array([1, 2]) In [8] b2 Out[8] array([1, 2]) In [9] b2[0] = 7 In [10] b2 Out[10] array([7, 2]) In [11] a Out[11] array([1, 2]) In [12] b[0] = 5 In [13] b Out[13] array([5, 2]) In [14] a Out[14] array([5, 2])
https://w.atwiki.jp/java_pro/pages/59.html
import java.util.ArrayList; import java.io.*; public class ArrayTestName { public static void main(String[] args){ BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); System.out.println("操作を選んで下さい"); System.out.println("1.登録"); System.out.println("2.一覧確認"); System.out.println("0.終了"); try { String line = reader.readLine(); int comand = Integer.parseInt(line); ArrayList String list = new ArrayList String (); while (comand != 0){ switch (comand){ case 1 line = reader.readLine(); list.add(line); System.out.println(line + "さんで登録しました。\n"); break; case 2 System.out.println("一覧を表示します"); for (int i = 0; i list.size(); i++){ System.out.println(list.get(i)); } System.out.println(""); break; } System.out.println("操作を選んで下さい"); System.out.println("1.登録"); System.out.println("2.一覧確認"); System.out.println("0.終了"); line = reader.readLine(); comand = Integer.parseInt(line); } } catch (IOException e){ System.out.println(e); } System.out.println("終了します。"); } }
https://w.atwiki.jp/taichik15/pages/47.html
argumentsをArrayに変換 関数の引数を表すargumentsは、配列ではない。 引数を配列に変換するには、以下のようにする。 var args = Array.prototype.slice.call(arguments);
https://w.atwiki.jp/nicepaper/pages/179.html
このページでは、phpプログラミングの簡単な配列について執筆していきます。 配列を使う事によって一つの変数に複数の値を格納出来るようになります。 何番目の値なのかを指定していく事によって値の参照や変更もできます。 arrayの書き方 この配列を使う上でarrayという命令を使っていきます。 $price = array("50円","100円","150円"); というように記述していき、50円という値を取り出したい場合は $price[0] と記述します。 100円の場合は$price[1]、15o円の場合は$price[2]です。 連想配列 今度はインデックス(0から始まる配列の位置を示すもの)が増えてしまってややこしくなってしまいそうですね。 そこで値を連想させやすいインデックスに変えてみましょう。 $price = array{ "kome" = "50円", "miso" = "100円", "natto" = "150円", }; というように書きます。すると、50円という値を取り出したい時に、 $price["kome"] と記述すればよくなります。= は連想配列のインデックスと値をつなげるための記号です。 内容の追加変更は普段通り、 $price["kome"] = "60円"; という風にします。 以上